<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	
</body>
<script>
	// es6之前
	// var name=15;
	// var p = {
	// 	name:26,
	// 	say:function(){
	// 		setTimeout(()=>{ 
	// 			// 箭头函数不具有限定this的zuoyong 作用
	// 			console.log(this.name)  
	// 		},50)
	// 	}
	// }

	// p.say()

	// var p2 = {
	// 	age:18,
	// 	run:function(){

	// 		setTimeout((function(){
	// 			console.log(this.age)
	// 		}).bind(this),100)
	// 		//通过执行bind方法 ，匿名函数并没有执行，只是改变了改函数内部的this，指向p2
	// 	}
	// }
	// p2.run()

	// call() apply() bind() ie9+



	// function say(){
	// 	console.log(this.name)
	// }
	// var fn = say.bind({name:100},1,2,3)
	// fn()

	// 优化
		(function say(){
			console.log(this.name)
		}).bind({name:"jack"})()


		// var LFD  = (function(){})()

	//执行bind之后 会产生一个新的函数 这个新函数 和原来的逻辑一样，唯一的不同就是this的指向
</script>
</html>